﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using EYDIngenieria.ERP.Aplicacion.Mantenedores;
using EYDIngenieria.ERP.ObjetosDeNegocio.Dominio;

public partial class Mantenedores_MantenedorBanco : System.Web.UI.Page
{
    private EYDIngenieria.ERP.Aplicacion.Mantenedores.MantenedorCuentaCorriente mantenedor = new MantenedorCuentaCorriente();
    private EYDIngenieria.ERP.Aplicacion.Mantenedores.MantenedorBanco mantenedorBanco = new MantenedorBanco();
    private MantenedorCuentaCorriente mantenedorCuentaCorriente = new MantenedorCuentaCorriente();
     private MantenedorChequera mantenedorChequera = new MantenedorChequera();
    protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            MantenedorVistaGestion();
            ddlBanco.DataTextField = "Codigo";
            ddlBanco.DataValueField = "Id";
            ddlBanco.DataSource = mantenedorBanco.Listar();
            ddlBanco.DataBind();
            ListItem li = new ListItem("Seleccione","0");
            ddlBanco.Items.Insert(0,li);
       }
}

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
    {
        SetearFormulario();
        MantenedorVisualizacion();
    }

    private void SetearFormulario()
    {
        ddlBanco.SelectedIndex = -1;
        ddlCuentaCorriente.SelectedIndex = -1;
        txbDesde.Text = string.Empty;
        txbHasta.Text = string.Empty;
        txbNumero.Text = string.Empty;
        
    }

    private void MantenedorVistaInicial()
    {
        txbDesde.Enabled = false;
 
        btnNuevo.Visible = true;
        btnAceptar.Visible = false;
        btnCancelar.Visible = false;
        btnEliminar.Visible = false;
        btnModificar.Visible = false;
        SetearFormulario();
    }

    private void MantenedorVisualizacion()
    {
        SetearFormulario();
        txbDesde.Enabled = false;

        btnNuevo.Visible = true;
        btnAceptar.Visible = false;
        btnCancelar.Visible = false;
        btnEliminar.Visible = true;
        btnModificar.Visible = true;
        
    }

    private void MantenedorVistaGestion()
    {
        SetearFormulario();
        txbDesde.Enabled = true;
        btnNuevo.Visible = false;
        btnAceptar.Visible = true;
        btnCancelar.Visible = true;
        btnEliminar.Visible = false;
        btnModificar.Visible = false;
    }



    protected void btnNuevo_Click(object sender, EventArgs e)
    {
        SetearFormulario();
        MantenedorVistaGestion();
    }
    protected void btnModificar_Click(object sender, EventArgs e)
    {      
        MantenedorVistaGestion();
    }
    protected void btnEliminar_Click(object sender, EventArgs e)
    {
        
    }
    protected void btnCancelar_Click(object sender, EventArgs e)
    {
        
    }
    protected void btnAceptar_Click(object sender, EventArgs e)
    {
        CuentaCorriente cc = mantenedorCuentaCorriente.Obtener(int.Parse(ddlCuentaCorriente.SelectedValue));
        Chequera chequera = new Chequera();
        chequera.Numero = int.Parse(txbNumero.Text);
        chequera.NumeroChequeInicial = int.Parse(txbDesde.Text);
        chequera.NumeroChequeFinal = int.Parse(txbHasta.Text);
        chequera.FechaCreacion = DateTime.Now;
        chequera.FechaTermino = new DateTime(1900,1,1);
        chequera.CuentaCorriente = cc;
        mantenedorChequera.Agregar(chequera);
        
        MantenedorVistaInicial();
        odsChequera.Select();
        GridView1.DataBind();
       
       
    }

    private void ActualizaDataSource()
    {
        
        
       
    }
    protected void ddlBanco_SelectedIndexChanged(object sender, EventArgs e)
    {
        Banco banco = mantenedorBanco.Obtener(int.Parse(ddlBanco.SelectedValue));
        CuentaCorriente[] cuentas = mantenedorCuentaCorriente.Buscar(banco);
        ListItem li;
        foreach(CuentaCorriente cuenta in cuentas)
        {
            li = new ListItem(cuenta.Numero.ToString() + " - " + cuenta.Banco.Codigo,cuenta.Id.ToString());
            ddlCuentaCorriente.Items.Add(li);
        }
        li = new ListItem("Seleccione","0");
        ddlCuentaCorriente.Items.Insert(0,li);
        
    }
    protected void ddlCuentaCorriente_SelectedIndexChanged(object sender, EventArgs e)
    {

    }
}
